//package com.joseph.websocket.handler;
//
//import com.joseph.websocket.bean.Message;
//import com.joseph.websocket.component.SessionManager;
//import com.joseph.websocket.util.AttrUtil;
//import io.netty.channel.ChannelHandlerContext;
//import io.netty.channel.SimpleChannelInboundHandler;
//import io.netty.util.HashedWheelTimer;
//import org.apache.rocketmq.common.message.MessageDecoder;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//
//public class WebSocketBizHandler extends MessageDecoder<Message> {
//
//    private static final Logger LOGGER = LoggerFactory.getLogger(WebSocketBizHandler.class);
//
//    protected void channelRead0(ChannelHandlerContext ctx, Message frame) throws Exception {
//        LOGGER.info("message:{}", frame);
//        Thread.sleep(200);
//    }
//
//    @Override
//    public void channelInactive(ChannelHandlerContext ctx) throws Exception {
//        SessionManager.removeUser(ctx.channel().attr(AttrUtil.USER_ID).get());
//    }
//
//    @Override
//    public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
//        super.exceptionCaught(ctx, cause);
//        //cause.printStackTrace();
//    }
//
//    public static void main(String[] args) {
//        HashedWheelTimer timer = new HashedWheelTimer();
//    }
//}